const express = require("express");
const app = express();

//引入数据库连接文件
require("./db");

// 引入数据库集合对象
const adminModel = require("./db/model/adminModel");

// 处理post请求体的中间件，会在req上添加一个body属性，值是请求体参数
app.use(express.urlencoded());
app.use(express.json());

// 添加管理员接口
app.post("/addAdmin", async (req, res) => {
  const {
    adminName,
    password,
    regTime,
  } = req.body;
  
  
  try {
    //拿着用户名去数据库的adminModel集合中查询是否存在,findOne如果查询不到返回null
    const findResult = await adminModel.findOne({
      adminName,
    })

    //如果查询到了,则直接响应该用户名已经注册
    if (findResult) {
      return res.send({
        code: 10001,
        msg: "添加管理员-用户已经被注册",
        data: null
      })
    }

    //如果没有查询到,则向数据库添加该数据
    await adminModel.create({
      adminName,
      password,
      regTime,
    })

    res.send({
      code: 10000,
      msg: "添加管理员-成功",
      data: null
    })
  } catch (e) {
    res.send({
      code: 10002,
      msg: "添加管理员-异常",
      data: null
    })
  }
})

app.listen("8000", () => {
  console.log("服务器启动成功 http://127.0.0.1:8000");
})